<!DOCTYPE html>
<html lang="en">
<head>
    
    <meta charset="utf-8">
    <title>DataLinkage - Aliwork helper</title>
    
    <meta name="description" content="宜搭前端 JS 工具代码库" />
    
        <meta name="keywords" content="Aliwork 宜搭 工具库" />
        <meta name="keyword" content="Aliwork 宜搭 工具库" />
    
    
    
    <script src="scripts/prettify/prettify.js"></script>
    <script src="scripts/prettify/lang-css.js"></script>
    <!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <link type="text/css" rel="stylesheet" href="styles/prettify.css">
    <link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
    <script src="scripts/nav.js" defer></script>
    
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>

<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
  <div class="navicon"></div>
</label>

<label for="nav-trigger" class="overlay"></label>

<nav >
    
    <input type="text" id="nav-search" placeholder="Search" />
    
    
    <h2><a href="index.html">Home</a></h2><h2><a href="https://github.com/hackingzhang/aliwork-helper" target="_blank" class="menu-item" >Github</a></h2><h2><a href="https://gitee.com/hexzhangshuai/aliwork-helper" target="_blank" class="menu-item" >Gitee码云</a></h2><h2><a href="https://docs.aliwork.com/docs/developer/api/about" target="_blank" class="menu-item" >宜搭开放API</a></h2><h3>Modules</h3><ul><li><a href="module-DataLinkage.html">DataLinkage</a><ul class='methods'><li data-type='method'><a href="module-DataLinkage.html#.dataLinkage">dataLinkage</a></li><li data-type='method'><a href="module-DataLinkage.html#.dataLinkageSubform">dataLinkageSubform</a></li><li data-type='method'><a href="module-DataLinkage.html#~resolveConditionMap">resolveConditionMap</a></li></ul></li><li><a href="module-DataSource.html">DataSource</a><ul class='methods'><li data-type='method'><a href="module-DataSource.html#.deleteFormData">deleteFormData</a></li><li data-type='method'><a href="module-DataSource.html#.executeTask">executeTask</a></li><li data-type='method'><a href="module-DataSource.html#.fetchSubformDatas">fetchSubformDatas</a></li><li data-type='method'><a href="module-DataSource.html#.fetchSubformDatasAll">fetchSubformDatasAll</a></li><li data-type='method'><a href="module-DataSource.html#.getFormData">getFormData</a></li><li data-type='method'><a href="module-DataSource.html#.getOperationRecords">getOperationRecords</a></li><li data-type='method'><a href="module-DataSource.html#.saveFormData">saveFormData</a></li><li data-type='method'><a href="module-DataSource.html#.searchFormDataIds">searchFormDataIds</a></li><li data-type='method'><a href="module-DataSource.html#.searchFormDataIdsAll">searchFormDataIdsAll</a></li><li data-type='method'><a href="module-DataSource.html#.searchFormDatas">searchFormDatas</a></li><li data-type='method'><a href="module-DataSource.html#.searchFormDatasAll">searchFormDatasAll</a></li><li data-type='method'><a href="module-DataSource.html#.startInstance">startInstance</a></li><li data-type='method'><a href="module-DataSource.html#.updateFormData">updateFormData</a></li></ul></li><li><a href="module-Field.html">Field</a><ul class='methods'><li data-type='method'><a href="module-Field.html#.activateTabItems">activateTabItems</a></li><li data-type='method'><a href="module-Field.html#.fieldToString">fieldToString</a></li><li data-type='method'><a href="module-Field.html#.fieldValueDiff">fieldValueDiff</a></li><li data-type='method'><a href="module-Field.html#.fieldValueEqualSingle">fieldValueEqualSingle</a></li><li data-type='method'><a href="module-Field.html#.generateAssociationFormFieldData">generateAssociationFormFieldData</a></li><li data-type='method'><a href="module-Field.html#.generateDptFieldData">generateDptFieldData</a></li><li data-type='method'><a href="module-Field.html#.generateEmployeeFieldData">generateEmployeeFieldData</a></li><li data-type='method'><a href="module-Field.html#.getFieldDataTypeById">getFieldDataTypeById</a></li><li data-type='method'><a href="module-Field.html#.getFieldTypeById">getFieldTypeById</a></li><li data-type='method'><a href="module-Field.html#.mergeTo">mergeTo</a></li><li data-type='method'><a href="module-Field.html#.syncTo">syncTo</a></li></ul></li><li><a href="module-Subform.html">Subform</a><ul class='methods'><li data-type='method'><a href="module-Subform.html#.associateForm2Subform">associateForm2Subform</a></li><li data-type='method'><a href="module-Subform.html#.sum2Main">sum2Main</a></li><li data-type='method'><a href="module-Subform.html#~resolveFieldMaps">resolveFieldMaps</a></li></ul></li><li><a href="module-UI.html">UI</a><ul class='methods'><li data-type='method'><a href="module-UI.html#.dialog">dialog</a></li><li data-type='method'><a href="module-UI.html#.hijackSubmit">hijackSubmit</a></li><li data-type='method'><a href="module-UI.html#.loading">loading</a></li></ul></li><li><a href="module-Utils.html">Utils</a><ul class='methods'><li data-type='method'><a href="module-Utils.html#.dateTimeFormat">dateTimeFormat</a></li><li data-type='method'><a href="module-Utils.html#.generateRandomId">generateRandomId</a></li><li data-type='method'><a href="module-Utils.html#.isEmpty">isEmpty</a></li><li data-type='method'><a href="module-Utils.html#.retry">retry</a></li><li data-type='method'><a href="module-Utils.html#.round">round</a></li><li data-type='method'><a href="module-Utils.html#.sleep">sleep</a></li></ul></li></ul><h3>Classes</h3><ul><li><a href="FieldChangeLogger.html">FieldChangeLogger</a><ul class='methods'><li data-type='method'><a href="FieldChangeLogger.html#change">change</a></li><li data-type='method'><a href="FieldChangeLogger.html#clear">clear</a></li><li data-type='method'><a href="FieldChangeLogger.html#format">format</a></li></ul></li><li><a href="module-Subform-Subform.html">Subform</a><ul class='methods'><li data-type='method'><a href="module-Subform-Subform.html#getDatas">getDatas</a></li><li data-type='method'><a href="module-Subform-Subform.html#getFormGroupId">getFormGroupId</a></li><li data-type='method'><a href="module-Subform-Subform.html#getFormGroupIds">getFormGroupIds</a></li><li data-type='method'><a href="module-Subform-Subform.html#getIndex">getIndex</a></li><li data-type='method'><a href="module-Subform-Subform.html#getInstance">getInstance</a></li><li data-type='method'><a href="module-Subform-Subform.html#getItem">getItem</a></li><li data-type='method'><a href="module-Subform-Subform.html#setDatas">setDatas</a></li><li data-type='method'><a href="module-Subform-Subform.html#summary">summary</a></li><li data-type='method'><a href="module-Subform-Subform.html#updateItem">updateItem</a></li></ul></li></ul>
    
</nav>

<div id="main">
    
    <h1 class="page-title">DataLinkage</h1>
    

    




<section>

<header>
    
</header>

<article>
    
        <div class="container-overview">
        
            

<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>数据联动相关方法 <br/>
功能上类似于宜搭表单的数据联动，即根据本表单数据作为条件从其他表单带数据到本表单</li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line1">line 1</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>




            
                <div class="description usertext">数据联动相关方法 <br/>
功能上类似于宜搭表单的数据联动，即根据本表单数据作为条件从其他表单带数据到本表单</div>
            

            
        
        </div>
    

    

    

    
    
    

     

    

    

    
        <h3 class="subsection-title">Methods</h3>

        
            

    

    <h4 class="name" id=".dataLinkage"><span class="type-signature type-signature-async, static">(async, static) </span>dataLinkage<span class="signature">(context, targetFormType, targetFormUuid, targetFieldId, fillingFieldId, conditionMap, postProcessor, stirctCondition)</span><span class="type-signature"></span></h4>

    




<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>数据联动 <br/>
本方法仅支持带数据到主表，要数据联动到子表，请使用<a href="module-DataLinkage.html#.dataLinkageSubform"><code>module:DataLinkage.dataLinkageSubform</code></a></li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line116">line 116</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>











    <h5 class="h5-examples">Example</h5>
    
    <pre class="prettyprint"><code>// 假设我们有一个员工信息表A（FORM-aaa）和审批表B（FORM-bbb）
// 员工信息表中有两个字段：员工姓名（textField_aaa1） 和 主管（textField_aaa2）
// 审批表有一个申请人字段，唯一标识textField_bbb1，和 主管（textField_bbb2）。
// 现在，在审批表中我们需要根据申请人从员工信息表中带出主管信息（textField_aaa2）并填充到主管（textField_bbb2）字段
// 在审批表中可以这么写：

// 当申请人变更时执行，需要将此函数设置为申请人的值变更动作回调
export function onProposerChange() {
  dataLinkage(
    this,
    "form",
    "FORM-aaa",
    "textField_aaa2",
    "textField_bbb2",
    [{ from: "textField_bbb1", to: "textField_aaa1" }],
    undefined,
    true
  );
}</code></pre>




    <h5 class="h5-parameters">Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>context</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">this上下文</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFormType</code></td>
            

            <td class="type">
            
                
<span class="param-type">"form"</span>
|

<span class="param-type">"process"</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单类型，form表示普通表单，process表示流程</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFormUuid</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单UUID</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单要带过来的字段唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>fillingFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">要填充的本表单字段唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>conditionMap</code></td>
            

            <td class="type">
            
                
<span class="param-type">Array.&lt;<a href="module-DataLinkage.html#~ConditionMapItem">module:DataLinkage~ConditionMapItem</a>></span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">条件规则映射</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>postProcessor</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="module-DataLinkage.html#~PostProcessor">module:DataLinkage~PostProcessor</a></span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">后置处理函数</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>stirctCondition</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            

            
                <td class="default">
                
                    <code>true</code>
                
                </td>
            

            <td class="description last">严格的条件规则，即只要有一个条件为undefined、null或者空字符串，则填充值为空</td>
        </tr>

    
    </tbody>
</table>



















        
            

    

    <h4 class="name" id=".dataLinkageSubform"><span class="type-signature type-signature-async, static">(async, static) </span>dataLinkageSubform<span class="signature">(context, tableFieldId, formGroupId, targetFormType, targetFormUuid, targetFieldId, fillingFieldId, conditionMap, postProcessor, stirctCondition)</span><span class="type-signature"></span></h4>

    




<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>子表数据联动</li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line211">line 211</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>











    <h5 class="h5-examples">Example</h5>
    
    <pre class="prettyprint"><code>// 假设我们有一个员工信息表A（FORM-aaa）和审批表B（FORM-bbb）
// 员工信息表中有两个字段：员工姓名（textField_aaa1） 和 主管（textField_aaa2）
// 审批表有一个子表（tableField_bbb），子表中包含两个字段：1.员工姓名字段，唯一标识textField_bbb1，和 2.主管（textField_bbb2）。
// 现在，在审批表的子表中我们需要根据员工姓名从员工信息表中带出主管信息（textField_aaa2）并填充到主管（textField_bbb2）字段
// 在审批表中可以这么写：

// 当子表变更时执行，需要将此函数设置为子表的值变更动作回调
export function onSubformChange({ extra }) {
  if (extra &amp;&amp; extra.from === "form_change") {
    const { formGroupId, tableFieldId } = extra;

    if (extra.fieldId === "textField_bbb1") {
      dataLinkageSubform(
        this,
        "tableField_bbb",
        formGroupId,
        "form",
        "FORM-aaa",
        "textField_aaa2",
        "textField_bbb2",
        [{ from: "textField_bbb1", to: "textField_aaa1", isSubform: true }],
        undefined,
        true
      );
    }
  }
}</code></pre>




    <h5 class="h5-parameters">Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>context</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">this上下文</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>tableFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">子表唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>formGroupId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">子表数据行标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFormType</code></td>
            

            <td class="type">
            
                
<span class="param-type">"form"</span>
|

<span class="param-type">"process"</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单类型，form表示普通表单，process表示流程</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFormUuid</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单UUID</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>targetFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">目标表单要带过来的字段唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>fillingFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">要填充的本表单字段唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>conditionMap</code></td>
            

            <td class="type">
            
                
<span class="param-type">Array.&lt;<a href="module-DataLinkage.html#~ConditionMapItem">module:DataLinkage~ConditionMapItem</a>></span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">条件规则映射</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>postProcessor</code></td>
            

            <td class="type">
            
                
<span class="param-type"><a href="module-DataLinkage.html#~PostProcessor">module:DataLinkage~PostProcessor</a></span>



            
            </td>

            

            
                <td class="default">
                
                </td>
            

            <td class="description last">后置处理函数</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>stirctCondition</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            

            
                <td class="default">
                
                    <code>true</code>
                
                </td>
            

            <td class="description last">严格的条件规则，即只要有一个条件为undefined、null或者空字符串，则填充值为空</td>
        </tr>

    
    </tbody>
</table>



















        
            

    

    <h4 class="name" id="~resolveConditionMap"><span class="type-signature type-signature-inner">(inner) </span>resolveConditionMap<span class="signature">(context, conditionMap, tableFieldId, changeItemIndex)</span><span class="type-signature"> &rarr; {Object}</span></h4>

    




<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>处理数据联动的条件规则映射</li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line26">line 26</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>













    <h5 class="h5-parameters">Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>context</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>



            
            </td>

            

            

            <td class="description last">this上下文</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>conditionMap</code></td>
            

            <td class="type">
            
                
<span class="param-type">Array.&lt;ConditionMapItem></span>



            
            </td>

            

            

            <td class="description last">条件规则映射</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>tableFieldId</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last">子表唯一标识</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>changeItemIndex</code></td>
            

            <td class="type">
            
                
<span class="param-type">number</span>



            
            </td>

            

            

            <td class="description last">子表字段所在行下标</td>
        </tr>

    
    </tbody>
</table>
















<h5 class="h5-returns">Returns:</h5>

        
<div class="param-desc">
    用于查询目标表单的条件参数
</div>



<dl class="param-type">
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Object</span>



    </dd>
</dl>

    



        
    

    
        <h3 class="subsection-title">Type Definitions</h3>

        
                
<h4 class="name" id="~ConditionMapItem">ConditionMapItem</h4>





<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>条件规则映射项 ConditionMapItem</li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line9">line 9</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>



    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>from</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last">本表单字段的唯一标识，查询条件的值来源于此字段</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>to</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>



            
            </td>

            

            

            <td class="description last">目标表单字段唯一标识，使用此字段作为筛选字段</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>isSubform</code></td>
            

            <td class="type">
            
                
<span class="param-type">boolean</span>



            
            </td>

            

            

            <td class="description last">from字段是否子表字段</td>
        </tr>

    
    </tbody>
</table>






<div class="description usertext">
    条件规则映射项 ConditionMapItem
</div>



    <h5 class="h5-types">Type:</h5>
    <ul>
        <li>
            
<span class="param-type">Object</span>



        </li>
    </ul>






            
                

    

    <h4 class="name" id="~PostProcessor"><span class="type-signature"></span>PostProcessor<span class="signature">(context, value)</span><span class="type-signature"> &rarr; {*}</span></h4>

    




<dl class="details">
    
    <dt class="tag-description">Description:</dt>
    <dd class="tag-description"><ul class="dummy"><li>数据联动后置处理函数定义</li></ul></dd>
    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="data-linkage.js.html">data-linkage.js</a>, <a href="data-linkage.js.html#line74">line 74</a>
    </li></ul></dd>
    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>













    <h5 class="h5-parameters">Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>context</code></td>
            

            <td class="type">
            
                
<span class="param-type">Object</span>



            
            </td>

            

            

            <td class="description last">this上下文</td>
        </tr>

    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type">any</span>



            
            </td>

            

            

            <td class="description last">从目标表单获取到的原始值</td>
        </tr>

    
    </tbody>
</table>
















<h5 class="h5-returns">Returns:</h5>

        
<div class="param-desc">
    处理后的值
</div>



<dl class="param-type">
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">*</span>



    </dd>
</dl>

    



            
    

    
</article>

</section>




    
    
</div>

<br class="clear">

<footer>
    Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.2</a> on Tue Mar 19 2024 17:01:50 GMT+0800 (中国标准时间) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
</footer>

<script>prettyPrint();</script>
<script src="scripts/polyfill.js"></script>
<script src="scripts/linenumber.js"></script>

<script src="scripts/search.js" defer></script>



</body>
</html>